package com.yuanqi.service;

import com.yuanqi.domain.ManualPayment;
import java.util.List;
import java.util.Map;

public interface ManualPaymentService {
    
    /**
     * 创建手动付款
     */
    ManualPayment createPayment(ManualPayment payment);
    
    /**
     * 更新手动付款
     */
    ManualPayment updatePayment(ManualPayment payment);
    
    /**
     * 删除手动付款
     */
    void deletePayment(Long id);
    
    /**
     * 根据ID查找手动付款
     */
    ManualPayment findById(Long id);
    
    /**
     * 根据付款编号查找
     */
    ManualPayment findByPaymentCode(String paymentCode);
    
    /**
     * 获取所有手动付款
     */
    List<ManualPayment> findAll();
    
    /**
     * 根据供应商ID查找
     */
    List<ManualPayment> findBySupplierId(Long supplierId);
    
    /**
     * 根据状态查找
     */
    List<ManualPayment> findByStatus(Integer status);
    
    /**
     * 生成付款编号
     */
    String generatePaymentCode();
    
    /**
     * 获取统计数据
     */
    Map<String, Object> getStatistics();
}


